End-to-end Verification of Security Enforcement is Fine
نویسندگان
چکیده
Proving software free of security bugs is hard. Programming language support to ensure that programs correctly enforce their security policies would help, but, to date, no language has the ability to verify the enforcement of the kinds of policies used in practice— dynamic, stateful policies which address a broad range of concerns including forms of access control and information flow tracking. This paper makes two main contributions. First, we present FINE, a new source-level security-typed language that, through the use of a simple module system and dependent, refinement, and affine types, can be used to check the enforcement of dynamic security policies applied to real software. Second, we define DCIL, a small extension to the type system of the .NET Common Intermediate Language, and show how to compile FINE in a type-preserving manner to DCIL. Our approach allows FINE programs to run on stock .NET virtual machines and to interface with .NET libraries. Additionally, our type-preserving compiler allows code consumers to download DCIL programs and check them for security while relying on a small trusted computing base. We have proved our source and target languages sound, our compilation type-preserving, and have made a prototype implementation of our compiler and several example programs available.
منابع مشابه
Type-preserving Compilation for End-to-end Verification of Security Enforcement
A number of programming languages use rich type systems to verify security properties of code. Some of these languages are meant for source programming, but programs written in these languages are compiled without explicit security proofs, limiting their utility in settings where proofs are necessary, e.g., proof-carrying authorization. Others languages do include explicit proofs, but these are...
متن کاملInformation Security: Facilitating User Precautions Vis-à-Vis Enforcement Against Attackers
We compare alternative information security policies—facilitating enduser precautions and enforcement against attackers. The context is mass and targeted attacks, taking account of strategic interactions between end users and attackers. For both mass and targeted attacks, facilitating end-user precautions reduces the expected loss of end users. However, the impact of enforcement on expected los...
متن کاملCollaborative End-to-end Enforcement of Fine-grained Information Sharing Policies in Distributed Systems
Executive Summary Reliable and timely sharing of information across a community of collaborating principals is an integral part of Microsoft's vision of the " new world of work " [30]. Examples of Microsoft's investment in this vision abound. For one, Sharepoint specifically aims to share information assets across teams, departments, and organizations while maintaining IT control. Tools like On...
متن کاملAn ECC-Based Mutual Authentication Scheme with One Time Signature (OTS) in Advanced Metering Infrastructure
Advanced metering infrastructure (AMI) is a key part of the smart grid; thus, one of the most important concerns is to offer a secure mutual authentication. This study focuses on communication between a smart meter and a server on the utility side. Hence, a mutual authentication mechanism in AMI is presented based on the elliptic curve cryptography (ECC) and one time signature (OTS) consists o...
متن کاملVery Static Enforcement of Dynamic Policies
Security policies are naturally dynamic. Reflecting this, there has been a growing interest in studying information-flow properties which change during program execution, including concepts such as declassification, revocation, and role-change. A static verification of a dynamic information flow policy, from a semantic perspective, should only need to concern itself with two things: 1) the depe...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009